1
走进层级结构:树的核心术语与递归本质
AI028 Lesson 6
00:00

树(Tree)是一种非线性的层级数据结构,它模拟了现实世界中的组织架构(如文件系统或家谱)。不同于列表、栈和队列的线性排列,树的本质在于其层级性 (Hierarchical)递归性 (Recursive)

1. 解剖树的形态

  • 节点 (Node): 包含键(Key)和有效载荷的基础单元。
  • 根节点 (Root): 唯一没有入边的节点,是树的起点。
  • 边 (Edge): 连接节点的唯一路径,代表父子关系。
  • 叶子节点 (Leaf): 没有子节点的末端,是递归终止的自然边界。

2. 递归定义的双重视角

我们可以从两种视角理解树:

图形学视角
由节点和边构成的无环、连通图,每个节点(除根外)有且仅有一个父节点。
递归视角
一棵树要么为空,要么由一个根节点及零个或多个子树(Subtree)组成。
HTML DOM 树示例
在 HTML 中,<html> 是根,<body><head> 是兄弟节点。每一个标签及其嵌套内容共同构成一棵子树。这种结构使得我们可以整体移动 <ul> 及其所有 <li> 而不破坏其内部层级。